package org.mianshi.metaapp;

import javax.swing.*;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;

/**
 * 两个链表排序
 *
 * 1. 链表1：135
 * 2. 链表2：246
 * 返回排好序的链表
 *
 *
 *
 */
public class 双链表排序 {
    public static void main(String[] args) {

    }

   public static class ListNode{
        Integer value;

        ListNode next;
   }


   public static  ListNode sort(ListNode listNode1,ListNode listNode2){
        ListNode dummy  = new ListNode();
       dummy.value = -1;
        ListNode cur= dummy ;

        while (listNode1!=null&&listNode2!=null){
            if (listNode1.value<listNode2.value){
                cur.next = listNode1;
                listNode1 = listNode1.next;
            }else {
                cur.next = listNode2;
                listNode2 = listNode2.next;
            }
            cur = cur.next;
        }
        if (listNode1!=null){
            cur.next = listNode1;
        }else if (listNode2!=null){
            cur.next = listNode2;
        }
        return dummy.next;
   }

//    public static List<Integer> sort(LinkedList<Integer> list1, LinkedList<Integer> list2){
//        List<Integer> res =  new ArrayList<>();
//        int length = Math.min(list1.size(), list2.size());
//        int index1=0;
//        int index2=0;
//        for (int i = 0; i < length; i++) {
//            if (list1.get(index1)<=list2.get(index2)) {
//                res.add(list1.get(index1));
//                index1++;
//            }else {
//                res.add(list2.get(index2));
//                index2++;
//            }
//        }
//        res.add()
//    }
}
